﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Text;

namespace Demo.ContractInheritance.ClientContractHierarchy
{
    //public class CalculatorService : ICalculator
    //{
    //    public double Add(double x, double y)
    //    {
    //        return x + y;
    //    }

    //    public double Subtract(double x, double y)
    //    {
    //        return x - y;
    //    }

    //    public double Multiply(double x, double y)
    //    {
    //        return x * y;
    //    }

    //    public double Divide(double x, double y)
    //    {
    //        return x / y;
    //    }
    //}

    //public class PrinterService : IPrinter
    //{
    //    public String TurnOn()
    //    {
    //        return "Printer turn on";
    //    }

    //    public String TurnOff()
    //    {
    //        return "Printer turn off";
    //    }

    //    public string Print(string content)
    //    {

    //        return "Print completed";
    //    }

    //    public string Scan(string content)
    //    {
    //        return "Scan completed";
    //    }

    //    public double Add(double x, double y)
    //    {
    //        return x + y;
    //    }

    //    public double Subtract(double x, double y)
    //    {
    //        return x - y;
    //    }

    //    public double Multiply(double x, double y)
    //    {
    //        return x * y;
    //    }

    //    public double Divide(double x, double y)
    //    {
    //        return x / y;
    //    }

    //    public string NightTurnOn()
    //    {
    //        return "Night Turn On";
    //    }

    //    public string NightTurnOff()
    //    {
    //        return "Night Turn Off";
    //    }
    //}

    //public class Night : INight
    //{

    //    public double Add(double x, double y)
    //    {
    //        return x + y;
    //    }

    //    public double Subtract(double x, double y)
    //    {
    //        return x - y;
    //    }

    //    public double Multiply(double x, double y)
    //    {
    //        return x * y;
    //    }

    //    public double Divide(double x, double y)
    //    {
    //        return x / y;
    //    }

    //    public string NightTurnOn()
    //    {
    //        return "Night Turn On";
    //    }

    //    public string NightTurnOff()
    //    {
    //        return "Night Turn Off";
    //    }

    //    public string TurnOn()
    //    {
    //        return "TurnOn";
    //    }

    //    public string TurnOff()
    //    {
    //        return "TurnOff";
    //    }

    //    public string Print(string content)
    //    {
    //        return "Print";
    //    }

    //    public string Scan(string content)
    //    {
    //        return "Scan";
    //    }
    //}

    public class ClassA : IA
    {
        public string MethodA()
        {
            return "This is ClassA.MethodA()";
        }
    }

    public class ClassB : IB
    {

        public string MethodB()
        {
            return "This is ClassB.MethodB()";
        }

        public string MethodA()
        {
            return "This is ClassB.MethodA()";
        }
    }

    public class ClassC : IC
    {

        public string MethodC()
        {
            return "This is ClassC.MethodC()";
        }

        public string MethodB()
        {
            return "This is ClassC.MethodB()";
        }

        public string MethodA()
        {
            return "This is ClassC.MethodA()";
        }
    }
}
